package com.geotmt.billingcenter.modules.consume.service;

import com.geotmt.billingcenter.common.entry.ConsumeBaseHisEntry;
import com.geotmt.billingcenter.common.vo.consume.ConsumeHisVo;
import com.geotmt.billingcenter.common.vo.params.ParamsConsume;
import com.geotmt.billingcenter.common.vo.params.ParamsForDel;

import java.util.Date;
import java.util.List;

/**
 * @Description 消耗历史 规则
 * @Author      yanghanwei
 * @Mail        yanghanwei@geotmt.com
 * @Date        2019/3/13 14:25
 * @Version     v1
 **/
public interface ConsumeBaseHisService {

    /**
     * 添加历史消耗 Base
     * @param consumeBaseHis
     * @return
     */
    Integer addBaseHis(ConsumeBaseHisEntry consumeBaseHis);

    /**
     * 删除历史消耗 Base
     * @param obj
     */
    void deleteBaseHis(ParamsForDel obj);

    /**
     * 历史消耗 list
     * @param obj
     * @return
     */
    List<ConsumeHisVo> listHis(ParamsConsume obj);

    /**
     * 更新历史表中的失效时间
     * @param preDay
     * @param id
     */
    void updateEndEffect(Date preDay, Integer id);
}
